package com.ffcc.fitness.trade.service;

import com.ffcc.fitness.base.response.JsonResult;
import com.ffcc.fitness.trade.pojo.entity.Trade;
import com.ffcc.fitness.trade.pojo.dto.TradeInsertParam;
import com.ffcc.fitness.trade.pojo.dto.TradeUpdateParam;
import com.ffcc.fitness.trade.pojo.vo.TradeVO;

import java.util.List;

public interface TradeService {

    void insert(TradeInsertParam tradeInsertParam);

    /**
     * 查询所有器械
     */
    List<TradeVO> select();
    
    /**
     * 根据交易ID查询交易详情
     */
    TradeVO selectById(Long tradeId);
    
    /**
     * 根据用户ID查询该用户的所有交易
     */
    List<TradeVO> selectByUserId(Long userId);
    
    /**
     * 更新交易信息
     */
    void update(TradeUpdateParam tradeUpdateParam);
    
    /**
     * 删除交易（软删除，设置状态为UNAVAILABLE）
     */
    void delete(Long tradeId, Long userId);
}
